/**
 * 淡水灯模块主入口
 * 集中导出淡水灯模块的所有服务
 * @version 1.0.1
 * @updated 优化文件结构和注释
 */

// 导入淡水灯模块的各个服务
const rgbwParser = require('./rgbw_parser');
const storage = require('./storage');
const lightModeEnhanced = require('./light_mode_enhanced');

// 设备类型标识
const DEVICE_TYPE = 'freshwater_lamp';

/**
 * 检查设备类型是否为淡水灯
 * @param {string} deviceType - 设备类型
 * @returns {boolean} 是否为淡水灯
 */
function isFreshwaterLamp(deviceType) {
  return deviceType === DEVICE_TYPE;
}

/**
 * 获取设备通道数量
 * @param {string} [deviceType='freshwater_lamp'] - 设备类型
 * @returns {number} 通道数量
 */
function getChannelCount(deviceType = DEVICE_TYPE) {
  if (deviceType === DEVICE_TYPE) {
    return 4; // 淡水灯标准为4个通道（RGBW）
  }
  return 4; // 默认返回4
}

/**
 * 获取设备特定的默认设置
 * @returns {Object} 默认设置
 */
function getDefaultSettings() {
  return {
    deviceType: DEVICE_TYPE,
    channelNames: ['红', '绿', '蓝', '白'],
    maxChannels: 4,
    defaultMode: 1, // 日光模式
    defaultBrightness: 75
  };
}

// 导出模块
module.exports = {
  // 设备标识
  DEVICE_TYPE,
  
  // 辅助方法
  isFreshwaterLamp,
  getChannelCount,
  getDefaultSettings,
  
  // 服务模块
  rgbwParser,
  storage,
  lightModeEnhanced
}; 